草庐IT

javascript - 访问http状态码常量

全部标签

ruby - 无法从同一网络上的另一台计算机访问本地 Sinatra 服务器

我有一个通过textmate运行的简单Sinatra服务器,但我无法从同一网络上的另一台计算机访问。我在MacOS10.8.3上运行Ruby1.9.3p327和Sinatra1.4.1。防火墙已禁用。我在不同的网络和计算机上测试了相同的场景。计算机响应简单的ping,但当我尝试远程登录端口4567时,我无法建立连接。 最佳答案 有一个recentcommittoSinatra出于安全考虑,在开发模式下将默认监听地址从0.0.0.0更改为localhost。为了明确允许从网络访问,您需要在另一种模式(例如生产模式)下运行您的应用程序,

ruby - 处理来自 Net::HTTP 的异常的最佳方法是什么?

从Net::HTTP中拯救异常的最佳方法是什么?抛出的异常在Ruby的socket.c中有描述。,比如Errno::ETIMEDOUT,Errno::ECONNRESET,和Errno::ECONNREFUSED.所有这些的基类是SystemCallError,但写出如下代码感觉很奇怪,因为SystemCallError似乎距离制作HTTP还很遥远调用:beginresponse=Net::HTTP.get_response(uri)response.code=="200"rescueSystemCallErrorfalseend只有我吗?除了修复Net::HTTP之外,还有更好的方法

ruby - 如何在 ruby​​ net/http 中实现 cookie 支持?

我想为使用net/http浏览网页的ruby​​类添加cookie支持。Cookie必须存储在文件中才能在脚本结束后继续存在。当然我可以阅读规范并编写某种处理程序,使用某种cookie.txt格式等等,但这似乎意味着重新发明轮子。有没有更好的方法来完成这个任务?也许是某种cooiejar类来处理cookie? 最佳答案 如果您的服务器返回并需要多个cookie,则接受的答案将不起作用。例如,如果服务器返回一组FedAuth[n]cookie,就会发生这种情况。如果这对您有影响,您可能需要考虑使用以下内容:http=Net::HTTP

ruby - ruby 中的常量或类变量?

我已经使用Ruby编程几个月了,我想知道什么时候使用常量而不是类变量是合适的,反之亦然。(我在Rails工作,考虑模型中的常量)。classCategoryTYPES=%w(listingeventbusiness).freezeend或classCategory@@types=%w(listingeventbusiness).freezecattr_reader:typesend是否存在一种情况优于另一种情况?还是只是品味/风格的问题? 最佳答案 最主要的是,通过使用CONSTANT表示法,您可以让读者清楚明白。小写的卡住字符串给

ruby - 如何使用 Nokogiri 访问属性

我有一个访问某些属性值的简单任务。这是一个简单的脚本,它使用Nokogiri::XML::Builder创建一个简单的XML文档。require'nokogiri'builder=Nokogiri::XML::Builder.new(:encoding=>'UTF-8')do|xml|xml.Placement(:messageId=>"392847-039820-938777",:system=>"MOD",:version=>"2.0"){xml.objects{xml.object(:myattribute=>"99",:anotherattrib=>"333")xml.next

ruby - 升级到 Rubygems 1.5.0 后,Bundler 抛出未初始化常量 Gem::SilentUI (NameError) 错误

我运行gemupdate--system以更新到Rubygems1.5.0,每次运行任何bundle命令后我得到:rvm/gems/ruby-1.8.7-p249/gems/bundler-1.0.9/lib/bundler/ui.rb:56:未初始化常量Gem::SilentUI(NameError)还有其他人遇到过这个问题吗? 最佳答案 更新到bundler1.0.10或更高版本(gemupdatebundler)。此问题已在更高版本中修复。 关于ruby-升级到Rubygems1.

ruby - 如何在没有警告的情况下重新定义 Ruby 常量?

我正在运行一些Ruby代码,每次日期更改时都会评估Ruby文件。在文件中,我有常量定义,比如Tau=2*Pi当然,它们使解释器每次都显示不需要的“已初始化常量”警告,因此,我希望具有以下功能:def_if_not_defined(:Tau,2*Pi)redef_without_warning(:Tau,2*Pi)我可以通过像这样编写所有常量定义来避免警告:Tau=2*Piunlessdefined?(Tau)但它不够优雅而且有点潮湿(不是DRY)。def_if_not_defined有更好的方法吗?以及如何redef_without_warning?--感谢史蒂夫的解决方案:class

ruby-on-rails - 如何在 Rails Controller 中返回 HTTP 204

这看起来很基础,但我是Ruby/Rails初学者。我只需要在Controller中返回HTTP204。会respond_todo|format|format.htmlend返回204? 最佳答案 head:no_content使用Rails3.2.x、4.x测试。它会导致Controller方法以204NoContentHTTP状态代码进行响应。在名为foobar的Controller方法中使用它的示例:deffoobarhead:no_contentend 关于ruby-on-rail

ruby - `File` 对象的访问模式之间的差异(即 w+、r+)

在Ruby中使用文件时,r+和w+模式有什么区别?a+模式怎么样? 最佳答案 参见http://www.tutorialspoint.com/ruby/ruby_input_output.htm引用:rRead-onlymode.Thefilepointerisplacedatthebeginningofthefile.Thisisthedefaultmode.r+Read-writemode.Thefilepointerwillbeatthebeginningofthefile.wWrite-onlymode.Overwrites

ruby-on-rails - 如果我在 Ruby on Rails 中有一个散列,有没有办法让它无差别访问?

如果我已经有一个散列,我可以这样做吗h[:foo]h['foo']是一样的吗?(这叫冷漠访问吗?)详细信息:我在initializers中使用以下内容加载了此哈希,但可能不会有什么不同:SETTINGS=YAML.load_file("#{RAILS_ROOT}/config/settings.yml") 最佳答案 您可以只使用with_indifferent_access。SETTINGS=YAML.load_file("#{RAILS_ROOT}/config/settings.yml").with_indifferent_ac